﻿// Corn Fields POJ - 3254  训练营.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

/*
https://vjudge.net/problem/POJ-3254#author=GPT_zh

约翰农场主购买了一块郁郁葱葱的矩形牧场，由M乘以N（1 ≤ M ≤ 12; 1 ≤ N ≤ 12）个方块组成。他想在一些方块上种植美味的玉米给奶牛吃。不幸的是，其中一些方块不毛不育，不能种植作物。精明的约翰知道奶牛不喜欢彼此靠近，所以在选择要种植的方块时，他避免选择相邻的方块；没有两个被选择的方块共享一个边。他还没有最终决定要种植哪些方块。

作为一个非常开明的人，约翰希望考虑如何选择种植方块的所有可能选项。他如此开明，以至于将不选择任何方块也视为一种有效选项！请帮助约翰农场主确定他可以选择种植方块的方法数量。

输入
第一行：两个以空格分隔的整数：M 和 N
第2行..M+1：第 i+1 行描述了牧场的第 i 行，包括 N 个以空格分隔的整数，表示一个方块是否肥沃（1代表肥沃，0代表不毛不育）
输出
第一行：一个整数，表示约翰农场主选择种植方块的方法数量，对100,000,000取模。

2 3
1 1 1
0 1 0

9

提示
按以下方式对方块进行编号：
1 2 3
  4

只有一种方式种植一个方块（1, 2, 3, 或 4），有三种方式种植两个方块（13, 14, 或 34），一种方式种植三个方块（134），以及一种方式不种植任何方块。4+3+1+1=9。
*/
int main()
{
    std::cout << "Hello World!\n";
}

 